package video.dali.service;

import org.springframework.web.multipart.MultipartFile;
import video.dali.common.PageResult;
import video.dali.common.dto.CategoryPageDto;
import video.dali.common.dto.UserVideo;
import video.dali.common.dto.VideoDto;
import video.dali.common.dto.VideosCategoryPageDto;
import video.dali.common.entity.Video;
import video.dali.common.vo.VideoVo;

import java.io.IOException;
import java.util.List;

public interface VideoService {

    /**
     * 上传文件
     * @param videoDto
     */
    void upload(VideoDto videoDto) throws IOException;


    /**
     * 删除视频
     * @param userVideo
     */
    void deleteUserVideo(UserVideo userVideo) throws IOException;


    /**
     * 根据userId查询视频
     * @param
     * @return
     */
    List<Video> listByUserId();


    /**
     * 根据id查询视频
     * @param id
     * @return
     */
    VideoVo getById(Integer id);


    /**
     * 根据分类id查询视频
     * @param videosCategoryPageDto
     * @return
     */
    PageResult getVideosByCategoryId(VideosCategoryPageDto videosCategoryPageDto);
}
